home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr37 / rreq11b.zip / REGREQ.PPS < prev    next >
Text File  |  1995-03-24  |  6KB  |  185 lines

  1. ;------------------------------------------------------------------------
  2. ;                       REGREQ.PPE  v1.0
  3. ;                    Copyright 1995 - Herbert Bushong
  4. ;------------------------------------------------------------------------
  5.  
  6. ;       A New user log-in PPE for to allow a new user to
  7. ;       Download an any of a list of files and optionally logging them off.
  8. ;       This PPE is used in a security specific display file
  9. ;
  10. ;       Uses a config file and a list file to supply necessary information
  11.  
  12.  
  13. *$USEFUNCS
  14. *$INCLUDE:d:\pcb\ppl\libs\miscfn.lib
  15.  
  16. STRING ListFile, CfgFile, RRIntroFile, RRDLFile(1,1),DLSel(1), TempIn
  17. STRING DLCmd, DLProt, NumFiles, YNLogoff
  18. STRING MsgTemp, MsgPriv, MsgFrom,  MsgTo, MsgConf, MsgSubject
  19. STRING RRName, RRStreet1, RRStreet2, RRCity, RRState, RRZip, RRCountry
  20. INTEGER fh1, i, iTempIn
  21. BOOLEAN Files2DL
  22.  
  23. BEGIN
  24. ListFile=PPEPATH()+PPENAME()+".LST"
  25. CfgFile=PPEPATH()+PPENAME()+".CFG"
  26. MsgTemp=PPEPATH()+"RRTMPMSG.$$$"
  27. MsgFrom="SYSTEM DAEMON"
  28. MsgSubject=PPEName()+": notice"
  29. DLCmd="D"
  30. DLProt="Z"
  31. Files2DL=FALSE
  32.  
  33. ;READ CONFIG FILE
  34. fh1=FNEXT()
  35. fopen fh1, CfgFile, O_RD,S_DN
  36. if (FERR(fh1)) THEN
  37.         LOG FALSE, "Error opening "+CfgFile
  38.         PRINTLN "An Error Occured. Please notify sysop...."
  39.         GOTO finished
  40. ENDIF
  41. RRIntroFile=GetCfgLine(fh1)
  42. YNLogoff=GetCfgLine(fh1)
  43. MsgTo=GetCfgLine(fh1)
  44.         IF (MsgTo="") Let MsgTo="SYSOP"
  45. MsgConf=GetCfgLine(fh1)
  46.         If (MsgConf="") LET MsgConf="0"
  47. MsgPriv = UPPER(GetCfgLine(fh1))
  48.         If ((MsgPriv<>"N")&&(MsgPriv<>"R")) Let MsgPriv="R"
  49. FCLOSE fh1
  50. fh1=FNEXT()
  51. fopen fh1, CfgFile, O_RD,S_DN
  52. if (FERR(fh1)) THEN
  53.         LOG FALSE, "Error opening "+ListFile
  54.         PRINTLN "An Error Occured. Please notify sysop...."
  55.         GOTO finished
  56. ENDIF
  57. NumFiles=s2i(GetCfgLine(fh1),"10")              ;Get # of File entries
  58. Redim RRDLFile, NumFiles, 1
  59. Redim DLSel, NumFiles
  60. for i=1 to NumFiles
  61.         RRDLFile (i,1)=GetCfgLine(fh1)          ;Get File Description
  62.         RRDLFile (i,0)=GetCfgLine(fh1)          ;Get File Name
  63.         DLSel(i)=" "
  64. NEXT i
  65.  
  66. FCLOSE fh1
  67.  
  68. ;DISPLAY INTRO FILE, LIST FILE DESCRIPIONS and ASK which to DL
  69. CLS
  70. DISPFILE RRIntroFile, GRAPH+LANG
  71. NEWLINE
  72. WAIT
  73. iTempIn=NumFiles+1
  74. ;LIST FILE DESCRIPIONS and ASK which to DL
  75. :StartList
  76. CLS
  77. PRINTLN "@X0AThe following files are available for Downloading: @X07"
  78. NEWLINE
  79. For I=1 to NumFiles
  80.         PRINTLN "@X0E"+RIGHT(STRING(i),3)+")@X0C"+DLSel(i)+"@X0F"+RRDLFile(i,0)+"@X07"
  81. NEXT i
  82. PRINTLN "@X0E"+RIGHT(STRING(NumFiles+1),3)+") @X0BDownload Selected Files@X07"
  83. PRINTLN "@X0E  0) @X0BDo Not download anything now@X07"
  84. Newline
  85. iTempIn=0
  86. TempIn=""
  87. INPUTSTR "Enter Number to toggle for Downloading or action to take",TempIn,@X0E,3,"1234567890",LFAFTER+FIELDLEN
  88. IF (TempIN="") GOTO StartList
  89. iTempIn=s2i(TempIn,"10")
  90. IF (iTempIn>(NumFiles+1)) GOTO StartList
  91. IF (iTempIn=0) Goto AskMail
  92. IF (iTempIn=(NumFiles+1)) Goto StartDL
  93. SELECT CASE (DLSel(iTempIn))
  94. CASE " "
  95.         DLSel(iTempIn)="*"
  96. CASE "*"
  97.         DLSel(iTempIn)=" "
  98. DEFAULT
  99.         DLSel(iTempIn)="*"
  100. ENDSELECT
  101. GOTO StartList
  102. NEWLINE
  103. :StartDL
  104. PrintLn "@X09Flagging Chosen Files...@X07"
  105. For I=1 to NumFiles
  106.         IF (DLSel(i)="*") THEN
  107.                 Files2DL=TRUE
  108.                 FLAG RRDLFile(i,1)
  109.         ENDIF
  110. NEXT I
  111. IF (!(Files2DL)) GOTO AskMail
  112. CLS
  113. PRINTLN "@X0ABefore downloading, please provide the following information@X07"
  114. InputStr "Please provide your Real Name",RRName,@X0A,45,MASK_ALPHA(),LFAFTER+FIELDLEN
  115. NewLine
  116. PrintLN "@X0BChoose a Transfer Protocol"
  117. InputStr "(X)-modem, (Y)-Modem, or (Z)-modem",DLProt,@X0B,1,"xzyXYZ",LFAFTER+FIELDLEN
  118. DLCmd=DLCmd+";"+DLProt
  119. KBDSTUFF "Y"
  120. COMMAND FALSE,DLCmd
  121. KBDFLUSH
  122. fh1=FNEXT()
  123. FCREATE fh1,MsgTemp,O_WR,S_DB
  124. FPUTLN fh1, RRName
  125. FPUTLN fh1, "has downloaded the Following files:"
  126. For I=1 to NumFiles
  127.         IF (DLSel(i)="*") THEN
  128.                 FPUT fh1, RRDLFile(i,0)+" - "
  129.                 FPUTLN fh1, RRDLFile(i,1)
  130.         ENDIF
  131. NEXT I
  132. FCLOSE fh1
  133. GOTO SendMessage
  134.  
  135. :AskMail
  136. TempIn="Y"
  137. PRINTLN "@X0AYou have decided not to download the files"
  138. INPUTYN "Would you like to an application Mailed to you",TempIn,@X0A
  139. TempIn=UPPER(TempIn)
  140. NEWLINE
  141. IF (TempIn=NoChar()) Goto Finished
  142. CLS
  143. PRINTLN "@X0APlease Provide the Following Information@X07"
  144. Newlines 2
  145. TempIn=""
  146. PROMPTSTR 259, TempIn, 25,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  147. RRName=TempIn
  148. TempIn=""
  149. PROMPTSTR 260, TempIn, 25,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  150. RRName=RRName+TempIn
  151. DISPTEXT 698, NEWLINE
  152. PROMPTSTR 699, RRStreet1, 50,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  153. PROMPTSTR 700, RRStreet2, 50,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  154. PROMPTSTR 701, RRCity, 25,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  155. PROMPTSTR 702, RRState,10,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  156. PROMPTSTR 703, RRZip, 10,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  157. PROMPTSTR 704, RRCountry, 15,MASK_ALPHA(),FIELDLEN+GUIDE+LFAFTER
  158.  
  159. fh1=FNEXT()
  160. FCREATE fh1,MsgTemp,O_WR,S_DB
  161. FPUTLN fh1, RRName
  162. FPUTLN fh1, "has requested you mail information to him/her."
  163. FPUTLN fh1, "The following address info was provided:"
  164. FPUTLN fh1, ""
  165. FPUTLN fh1, RRName
  166. FPUTLN fh1, RRStreet1
  167. if (TRIM(RRStreet2," ")<>"") FPUTLN fh1, RRStreet2
  168. FPUTLN fh1, TRIM(RRCity," ")+", "+RRState+" "+RRZip
  169. FPUTLN fh1, RRCountry
  170. FCLOSE fh1
  171.  
  172. :SendMessage
  173. NEWLINES 2
  174. PRINTLN "@X0DSending Message to Sysop@X07"
  175. MESSAGE S2I(MsgConf,"10"), MsgTo, MsgFrom, MsgSubject, MsgPriv, 0, FALSE, FALSE, MsgTemp
  176. CLS
  177. PRINTLN "@X0AThank you...@X07"
  178.  
  179.  
  180. :Finished
  181. IF (YNLogoff="Y") THEN
  182.         PRINTLN "@X0CLogging off... @X07"
  183.         BYE
  184. ENDIF
  185. END